remove i386ancient and need at least debian stable to build
authorJoey Hess <joeyh@joeyh.name>
Wed, 1 Jan 2025 18:15:55 +0000 (14:15 -0400)
committerJoey Hess <joeyh@joeyh.name>
Wed, 1 Jan 2025 18:15:55 +0000 (14:15 -0400)
* Removed the i386ancient standalone tarball build for linux, which
  was increasingly unable to support new git-annex features.
* Removed support for building with ghc older than 9.0.2,
  and with older versions of haskell libraries than are in current Debian
  stable.
* stack.yaml: Update to lts-23.2.

Note that i386ancient was targeting linux 2.6.32, which has been EOL for
over 9 years now. Any old system still using such a kernel is certainly highly
insecure. And I suspect i386ancient had its own insecurities due to haskell
libraries and C libraries not having been updated.

24 files changed:
Build/DistributionUpdate.hs
CHANGELOG
Command/ImportFeed.hs
Database/ContentIdentifier.hs
Database/Export.hs
Database/Fsck.hs
Database/ImportFeed.hs
Database/Keys/SQL.hs
Database/RepoSize.hs
Messages/JSON.hs
Remote/S3.hs
Test/Framework.hs
Utility/Aeson.hs
Utility/MonotonicClock.hs
Utility/Process.hs
Utility/TList.hs
Utility/TimeStamp.hs
Utility/Tor.hs
doc/builds.mdwn
doc/install/Android/git-annex-install
doc/install/Linux_standalone.mdwn
git-annex.cabal
stack.yaml
standalone/linux/stack-i386ancient.yaml [deleted file]

index dfd85c3222468ccc20d8f9ce008a59d4d361aa13..80a0b2cdf3061fdba988a17c50d78cba451477b7 100644 (file)
@@ -39,7 +39,7 @@ signingKey = "89C809CB"
 -- it in the repository.
 autobuilds :: [(URLString, FilePath)]
 autobuilds = 
-       (map linuxarch ["i386", "amd64", "armel", "arm64", "i386-ancient", "arm64-ancient"]) ++
+       (map linuxarch ["i386", "amd64", "armel", "arm64", "arm64-ancient"]) ++
        [ (autobuild "x86_64-apple-catalina/git-annex.dmg", "git-annex/OSX/current/10.15_Catalina/git-annex.dmg")
        , (autobuild "windows/git-annex-installer.exe", "git-annex/windows/current/git-annex-installer.exe")
        ]
index 11d27b8c86c96c36c6bac3a3f22d897203f494f1..a5ad93f7188eca925ecbf0e96928a67a2b89aee7 100644 (file)
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -13,6 +13,12 @@ git-annex (10.20241203) UNRELEASED; urgency=medium
     transition when preferred content is set to "".
   * Honor annex.addunlocked configuration when importing a tree from a
     special remote.
+  * Removed the i386ancient standalone tarball build for linux, which
+    was increasingly unable to support new git-annex features.
+  * Removed support for building with ghc older than 9.0.2,
+    and with older versions of haskell libraries than are in current Debian
+    stable.
+  * stack.yaml: Update to lts-23.2.
 
  -- Joey Hess <id@joeyh.name>  Mon, 02 Dec 2024 13:41:31 -0400
 
index 5af7e2679fc76bc5ad3bdece801e63eea5c17da1..bdb16c98419a0fa490317c8687578f8758863b23 100644 (file)
@@ -170,7 +170,7 @@ getFeed o url st =
 
        -- Use parseFeedFromFile rather than reading the file
        -- ourselves because it goes out of its way to handle encodings.
-       parse tmpf = liftIO (parseFeedFromFile' tmpf) >>= \case
+       parse tmpf = liftIO (parseFeedFromFile tmpf) >>= \case
                Nothing -> debugfeedcontent tmpf "parsing the feed failed"
                Just f -> do
                        case decodeBS $ fromFeedText $ getFeedTitle f of
@@ -201,13 +201,6 @@ getFeed o url st =
                        record (Just (Just (playlistDownloads url playlist)))
                        next $ return True
 
-parseFeedFromFile' :: FilePath -> IO (Maybe Feed)
-#if MIN_VERSION_feed(1,1,0)
-parseFeedFromFile' = parseFeedFromFile
-#else
-parseFeedFromFile' f = catchMaybeIO (parseFeedFromFile f)
-#endif
-
 data ToDownload = ToDownload
        { feedurl :: URLString
        , location :: DownloadLocation
index bbf67dcfb1217e3b9373ed4a1e599d6b03c9d024..3a399f776547b9e713795542d894b2f7bf018dae 100644 (file)
 {-# LANGUAGE RankNTypes #-}
 {-# LANGUAGE DataKinds, FlexibleInstances #-}
 {-# LANGUAGE UndecidableInstances #-}
-#if MIN_VERSION_persistent_template(2,8,0)
 {-# LANGUAGE DerivingStrategies #-}
 {-# LANGUAGE StandaloneDeriving #-}
-#endif
 
 module Database.ContentIdentifier (
        ContentIdentifierHandle,
index 2f0da8b2310568ec1e9c100f0453d629ed578984..6de86c7925fffda876d6a81f57ccda6f6e4f76bc 100644 (file)
@@ -5,17 +5,14 @@
  - Licensed under the GNU AGPL version 3 or higher.
  -}
 
-{-# LANGUAGE CPP #-}
 {-# LANGUAGE QuasiQuotes, TypeFamilies, TypeOperators, TemplateHaskell #-}
 {-# LANGUAGE OverloadedStrings, GADTs, FlexibleContexts #-}
 {-# LANGUAGE MultiParamTypeClasses, GeneralizedNewtypeDeriving #-}
 {-# LANGUAGE RankNTypes #-}
 {-# LANGUAGE DataKinds, FlexibleInstances #-}
 {-# LANGUAGE UndecidableInstances #-}
-#if MIN_VERSION_persistent_template(2,8,0)
 {-# LANGUAGE DerivingStrategies #-}
 {-# LANGUAGE StandaloneDeriving #-}
-#endif
 
 module Database.Export (
        ExportHandle,
index cce5528100fb9d1c3fe41454ed099380620c725c..2ff4eb6bb59c593006acc24b50e7bc2035cb41cd 100644 (file)
@@ -5,7 +5,6 @@
  - Licensed under the GNU AGPL version 3 or higher.
  -}
 
-{-# LANGUAGE CPP #-}
 {-# LANGUAGE QuasiQuotes, TypeFamilies, TemplateHaskell #-}
 {-# LANGUAGE OverloadedStrings, GADTs, FlexibleContexts #-}
 {-# LANGUAGE MultiParamTypeClasses, GeneralizedNewtypeDeriving #-}
 {-# LANGUAGE RankNTypes #-}
 {-# LANGUAGE UndecidableInstances #-}
 {-# LANGUAGE TypeOperators #-}
-#if MIN_VERSION_persistent_template(2,8,0)
 {-# LANGUAGE DerivingStrategies #-}
 {-# LANGUAGE StandaloneDeriving #-}
-#endif
 
 module Database.Fsck (
        FsckHandle,
index e78f6ca9aa05617c1810b43bd61daf1e0339ef52..ad18a155308dd9d964dbf6294feac844cebdc820 100644 (file)
@@ -6,17 +6,14 @@
  - Licensed under the GNU AGPL version 3 or higher.
  -}
 
-{-# LANGUAGE CPP #-}
 {-# LANGUAGE QuasiQuotes, TypeFamilies, TypeOperators, TemplateHaskell #-}
 {-# LANGUAGE OverloadedStrings, GADTs, FlexibleContexts, EmptyDataDecls #-}
 {-# LANGUAGE MultiParamTypeClasses, GeneralizedNewtypeDeriving #-}
 {-# LANGUAGE RankNTypes #-}
 {-# LANGUAGE DataKinds, FlexibleInstances #-}
 {-# LANGUAGE UndecidableInstances #-}
-#if MIN_VERSION_persistent_template(2,8,0)
 {-# LANGUAGE DerivingStrategies #-}
 {-# LANGUAGE StandaloneDeriving #-}
-#endif
 
 module Database.ImportFeed (
        ImportFeedDbHandle,
index 2e40e39db349768db575a5b2ff17ab2480cd0f0d..6b36cd09d539f586d0ee83d91e345b660d8308df 100644 (file)
@@ -5,17 +5,14 @@
  - Licensed under the GNU AGPL version 3 or higher.
  -}
 
-{-# LANGUAGE CPP #-}
 {-# LANGUAGE QuasiQuotes, TypeFamilies, TypeOperators, TemplateHaskell #-}
 {-# LANGUAGE OverloadedStrings, GADTs, FlexibleContexts #-}
 {-# LANGUAGE MultiParamTypeClasses, GeneralizedNewtypeDeriving #-}
 {-# LANGUAGE RankNTypes, ScopedTypeVariables #-}
 {-# LANGUAGE DataKinds, FlexibleInstances #-}
 {-# LANGUAGE UndecidableInstances #-}
-#if MIN_VERSION_persistent_template(2,8,0)
 {-# LANGUAGE DerivingStrategies #-}
 {-# LANGUAGE StandaloneDeriving #-}
-#endif
 
 module Database.Keys.SQL where
 
index 13c7d7ebbab62ce700d63a31bc7f4dac8f89396a..0118e88a7bd74e15264e10f38f8cc28e53baf184 100644 (file)
@@ -5,7 +5,6 @@
  - Licensed under the GNU AGPL version 3 or higher.
  -}
 
-{-# LANGUAGE CPP #-}
 {-# LANGUAGE QuasiQuotes, TypeFamilies, TemplateHaskell #-}
 {-# LANGUAGE OverloadedStrings, GADTs, FlexibleContexts #-}
 {-# LANGUAGE MultiParamTypeClasses, GeneralizedNewtypeDeriving #-}
 {-# LANGUAGE RankNTypes #-}
 {-# LANGUAGE UndecidableInstances #-}
 {-# LANGUAGE TypeOperators #-}
-#if MIN_VERSION_persistent_template(2,8,0)
 {-# LANGUAGE DerivingStrategies #-}
 {-# LANGUAGE StandaloneDeriving #-}
-#endif
 
 module Database.RepoSize (
        RepoSizeHandle,
index 6c7830b68975faa183a1d22c8cc25d68abe13d26..70032d9b9cf7cdca7d7c5f2e4f1a9a8f1afe9252 100644 (file)
@@ -5,7 +5,7 @@
  - Licensed under the GNU AGPL version 3 or higher.
  -}
 
-{-# LANGUAGE OverloadedStrings, GADTs, CPP #-}
+{-# LANGUAGE OverloadedStrings, GADTs #-}
 
 module Messages.JSON (
        JSONBuilder,
@@ -35,11 +35,7 @@ import Control.Applicative
 import qualified Data.Map as M
 import qualified Data.Vector as V
 import qualified Data.ByteString.Lazy as L
-#if MIN_VERSION_aeson(2,0,0)
 import qualified Data.Aeson.KeyMap as HM
-#else
-import qualified Data.HashMap.Strict as HM
-#endif
 import System.IO
 import System.IO.Unsafe (unsafePerformIO)
 import Control.Concurrent
index b79b4778bed564fdf00b90a20f6356eadf0123c7..17ad6809f7874bd868b44de59d8da84355c57c3c 100644 (file)
@@ -366,12 +366,8 @@ storeHelper info h magic f object p = liftIO $ case partSize info of
                resp <- sendS3Handle h req
                vid <- mkS3VersionID object
                        <$> extractFromResourceT (S3.porVersionId resp)
-#if MIN_VERSION_aws(0,22,0)
                etag <- extractFromResourceT (Just (S3.porETag resp))
                return (etag, vid)
-#else
-               return (Nothing, vid)
-#endif
        multipartupload fsz partsz = runResourceT $ do
                contenttype <- liftIO getcontenttype
                let startreq = (S3.postInitiateMultipartUpload (bucket info) object)
@@ -751,11 +747,7 @@ rewritePreconditionException a = catchJust (Url.matchStatusCodeException want) a
 storeExportWithContentIdentifierS3 :: S3HandleVar -> Remote -> RemoteStateHandle -> S3Info -> Maybe Magic -> FilePath -> Key -> ExportLocation -> [ContentIdentifier] -> MeterUpdate -> Annex ContentIdentifier
 storeExportWithContentIdentifierS3 hv r rs info magic src k loc _overwritablecids p
        | versioning info = go
-#if MIN_VERSION_aws(0,22,0)
        | otherwise = go
-#else
-       | otherwise = giveup "git-annex is built with too old a version of the aws library to support this operation"
-#endif
   where
        go = storeExportS3' hv r rs info magic src k loc p >>= \case
                (_, Just vid) -> return $
@@ -1370,11 +1362,7 @@ getS3VersionIDPublicUrls mk info rs k =
 -- setting versioning in a bucket that git-annex has already exported
 -- files to risks losing the content of those un-versioned files.
 enableBucketVersioning :: SetupStage -> S3Info -> ParsedRemoteConfig -> RemoteGitConfig -> UUID -> Annex ()
-#if MIN_VERSION_aws(0,21,1)
 enableBucketVersioning ss info c gc u = do
-#else
-enableBucketVersioning ss info _ _ _ = do
-#endif
        case ss of
                Init -> when (versioning info) $
                        enableversioning (bucket info)
@@ -1382,7 +1370,6 @@ enableBucketVersioning ss info _ _ _ = do
                AutoEnable oldc -> checkunchanged oldc
   where
        enableversioning b = do
-#if MIN_VERSION_aws(0,21,1)
                showAction "checking bucket versioning"
                hdl <- mkS3HandleVar c gc u
                let setversioning = S3.putBucketVersioning b S3.VersioningEnabled
@@ -1401,15 +1388,6 @@ enableBucketVersioning ss info _ _ _ = do
 #else
                        void $ liftIO $ runResourceT $ sendS3Handle h setversioning
 #endif
-#else
-               showLongNote $ unlines
-                       [ "This version of git-annex cannot auto-enable S3 bucket versioning."
-                       , "You need to manually enable versioning in the S3 console"
-                       , "for the bucket \"" ++ T.unpack b ++ "\""
-                       , "https://docs.aws.amazon.com/AmazonS3/latest/user-guide/enable-versioning.html"
-                       , "It's important you enable versioning before storing anything in the bucket!"
-                       ]
-#endif
 
        checkunchanged oldc = do
                oldpc <- parsedRemoteConfig remote oldc
index ab6645308fe58e3d8131a2affd979849c2d2830a..b9b8bcde792b604dba6815d5e098186203499759 100644 (file)
@@ -5,8 +5,6 @@
  - Licensed under the GNU AGPL version 3 or higher.
  -}
 
-{-# LANGUAGE CPP #-}
-
 module Test.Framework where
 
 import Test.Tasty
@@ -858,13 +856,7 @@ initTestsName :: String
 initTestsName = "Init Tests"
 
 tastyParser :: [TestTree] -> ([String], Parser Test.Tasty.Options.OptionSet)
-#if MIN_VERSION_tasty(1,3,0)
-tastyParser ts = go
-#else
-tastyParser ts = ([], go)
-#endif
-  where
-       go = suiteOptionParser ingredients (topLevelTestGroup ts)
+tastyParser ts = suiteOptionParser ingredients (topLevelTestGroup ts)
 
 ingredients :: [Ingredient]
 ingredients =
index e4a186979a949d48fbe8be59f0306ff302456860..e03a7070519466dfde61587e8656dc63bb87c822 100644 (file)
@@ -7,7 +7,7 @@
  - License: BSD-2-clause
  -}
 
-{-# LANGUAGE FlexibleInstances, TypeSynonymInstances, CPP #-}
+{-# LANGUAGE FlexibleInstances, TypeSynonymInstances #-}
 
 module Utility.Aeson (
        module X,
@@ -21,9 +21,7 @@ module Utility.Aeson (
 import Data.Aeson as X (decode, eitherDecode, parseJSON, FromJSON, Object, object, Value(..), (.=), (.:), (.:?))
 import Data.Aeson hiding (encode)
 import qualified Data.Aeson
-#if MIN_VERSION_aeson(2,0,0)
 import qualified Data.Aeson.Key as AK
-#endif
 import qualified Data.Text as T
 import qualified Data.Text.Encoding as T
 import qualified Data.ByteString.Lazy as L
@@ -73,13 +71,8 @@ packString s = case T.decodeUtf8' (encodeBS s) of
        Right t -> t
        Left _ -> T.pack s
 
-#if MIN_VERSION_aeson(2,0,0)
 textKey :: T.Text -> AK.Key
 textKey = AK.fromText
-#else
-textKey :: T.Text -> T.Text
-textKey = id
-#endif
 
 -- | The same as packString . decodeBS, but more efficient in the usual
 -- case.
index d7d2ada7e56870571f53d8f67e8c1d93b2897e76..ad023e1b8ceb57d4c06f9f86ec24c2fad14fde2c 100644 (file)
 
 module Utility.MonotonicClock where
 
-#if MIN_VERSION_clock(0,3,0)
 import qualified System.Clock as Clock
-#else
-import qualified System.Posix.Clock as Clock
-#endif
 #ifdef linux_HOST_OS
 import Utility.Exception
 #endif
index 07f035d3426d1b633ac59c990a4ec9b45269199f..f9dd94ec8ea970e1f9da2c579022d636bfe823c9 100644 (file)
@@ -219,21 +219,7 @@ waitForProcess h = do
        return r
 
 cleanupProcess :: (Maybe Handle, Maybe Handle, Maybe Handle, ProcessHandle) -> IO () 
-#if MIN_VERSION_process(1,6,4)
 cleanupProcess = Utility.Process.Shim.cleanupProcess
-#else
-cleanupProcess (mb_stdin, mb_stdout, mb_stderr, pid) = do
-       -- Unlike the real cleanupProcess, this does not wait
-       -- for the process to finish in the background, so if
-       -- the process ignores SIGTERM, this can block until the process
-       -- gets around the exiting.
-       terminateProcess pid
-       let void _ = return ()
-       maybe (return ()) (void . tryNonAsync . hClose) mb_stdin
-       maybe (return ()) hClose mb_stdout
-       maybe (return ()) hClose mb_stderr
-       void $ waitForProcess pid
-#endif
 
 {- | Like hGetLine, reads a line from the Handle. Returns Nothing if end of
  - file is reached, or the handle is closed, or if the process has exited
index 6a5ff55c0173ee30b2cc742670de40e68a44144e..e39166fd008dd47ad54292cbf35c161b840f0827 100644 (file)
@@ -12,7 +12,6 @@
  -}
 
 {-# LANGUAGE BangPatterns #-}
-{-# LANGUAGE CPP #-}
 
 module Utility.TList (
        TList,
@@ -45,11 +44,7 @@ newTList = newEmptyTMVar
 headTList :: TList a -> STM a
 headTList tlist = do
        dl <- takeTMVar tlist
-#if MIN_VERSION_dlist(1,0,0)
        let !dl' = D.fromList $ D.tail dl
-#else
-       let !dl' = D.tail dl
-#endif
        unless (emptyDList dl') $
                putTMVar tlist dl'
        return (D.head dl)
index 3cc4d8d24596daa2cbc8e013ed93f7e0a694cf01..878d6f7299940ec4bd219c1466f249bb0711dadb 100644 (file)
@@ -5,8 +5,6 @@
  - License: BSD-2-clause
  -}
 
-{-# LANGUAGE CPP #-}
-
 module Utility.TimeStamp (
        parserPOSIXTime,
        parsePOSIXTime,
@@ -62,11 +60,7 @@ formatPOSIXTime fmt t = formatTime defaultTimeLocale fmt (posixSecondsToUTCTime
 
 {- Truncate the resolution to the specified number of decimal places. -}
 truncateResolution :: Int -> POSIXTime -> POSIXTime
-#if MIN_VERSION_time(1,9,1)
 truncateResolution n t = secondsToNominalDiffTime $
        fromIntegral ((truncate (nominalDiffTimeToSeconds t * d)) :: Integer) / d
   where
        d = 10 ^ n
-#else
-truncateResolution _ t = t
-#endif
index 0fab526820311134951f9cba56c48fbe3ebf18c7..b6e9484890f24600cf932ed398e56f964d2ae44b 100644 (file)
@@ -5,8 +5,6 @@
  - Licensed under the GNU AGPL version 3 or higher.
  -}
 
-{-# LANGUAGE CPP #-}
-
 module Utility.Tor (
        OnionPort,
        OnionAddress(..),
@@ -51,12 +49,8 @@ connectHiddenService (OnionAddress address) port = do
        return s
   where
        torsocksport = 9050
-#if MIN_VERSION_socks(0,6,0)
        torsockconf = defaultSocksConf $ SockAddrInet torsocksport $
                tupleToHostAddress (127,0,0,1)
-#else
-       torsockconf = defaultSocksConf "127.0.0.1" torsocksport
-#endif
        socksdomain = SocksAddrDomainName (BU8.fromString address)
        socksaddr = SocksAddress socksdomain (fromIntegral port)
 
index 12a929683960a057c42b7a7223a3f61eae58151a..dc639170c7fb9ecda333ea4a323b57b0822c418d 100644 (file)
@@ -15,9 +15,6 @@
 <h2>Linux arm64</h2>
 <iframe width=1024 height=40em scrolling=no frameborder=0 marginheight=0 marginwidth=0 src="https://downloads.kitenet.net/git-annex/autobuild/arm64/build-version">
 </iframe>
-<h2>Linux i386-ancient</h2>
-<iframe width=1024 height=40em scrolling=no frameborder=0 marginheight=0 marginwidth=0 src="https://downloads.kitenet.net/git-annex/autobuild/i386-ancient/build-version">
-</iframe>
 <h2>Linux arm64-ancient</h2>
 <iframe width=1024 height=40em scrolling=no frameborder=0 marginheight=0 marginwidth=0 src="https://downloads.kitenet.net/git-annex/autobuild/arm64-ancient/build-version">
 </iframe>
@@ -43,9 +40,6 @@
 <h2>Linux arm64</h2>
 <iframe width=1024 scrolling=no frameborder=0 marginheight=0 marginwidth=0 src="https://downloads.kitenet.net/git-annex/autobuild/arm64/">
 </iframe>
-<h2>Linux i386-ancient</h2>
-<iframe width=1024 scrolling=no frameborder=0 marginheight=0 marginwidth=0 src="https://downloads.kitenet.net/git-annex/autobuild/i386-ancient/">
-</iframe>
 <h2>Linux arm64-ancient</h2>
 <iframe width=1024 scrolling=no frameborder=0 marginheight=0 marginwidth=0 src="https://downloads.kitenet.net/git-annex/autobuild/arm64-ancient/">
 </iframe>
index 12fdcbd27cb84d0b1e6b8f3a4dfe95adc0ec5938..55af5e0116183cfc9cca946f5893b495df76aa60 100755 (executable)
@@ -25,7 +25,7 @@ case $(uname -m) in
                arch=amd64
                ;;
        x86_32)
-               arch=i386-ancient
+               arch=i386
                ;;
        *) 
                echo "unknown architecture $(uname -m), cannot install" >&2
index c57407cb7df246812bcc1371dc44e772f841c489..85ce6ed74bbbd58a711fc519cb0a55bfed68aec2 100644 (file)
@@ -7,7 +7,6 @@ dependencies and is self-contained.
 
 * x86-64: [download tarball](https://downloads.kitenet.net/git-annex/linux/current/git-annex-standalone-amd64.tar.gz)
 * x86-32: [download tarball](https://downloads.kitenet.net/git-annex/linux/current/git-annex-standalone-i386.tar.gz)
-* x86-32, for ancient kernels: [download tarball](https://downloads.kitenet.net/git-annex/linux/current/git-annex-standalone-i386-ancient.tar.gz)
 * arm: [download tarball](https://downloads.kitenet.net/git-annex/linux/current/git-annex-standalone-armel.tar.gz)
 * arm64: [download tarball](https://downloads.kitenet.net/git-annex/linux/current/git-annex-standalone-arm64.tar.gz)
 * arm64, for ancient kernels: [download tarball](https://downloads.kitenet.net/git-annex/linux/current/git-annex-standalone-arm64-ancient.tar.gz)
@@ -27,11 +26,6 @@ linux systems.
 * [[tips/Synology_NAS_and_git_annex]]
 * [[forum_thread|forum/new_linux_arm_tarball_build]]
 
-The x86-32 build for ancient kernels is for use with Linux kernel
-versions such as 2.6.32. It will work on both 32 and 64 bit systems.
-This build does not support some of git-annex's newer features,
-notably [[smart_http|tips/smart_http_server]].
-
 The arm64 build for ancient kernels is for Linux kernels such as 4.19,
 which is still in use on Android phones.
 
@@ -41,7 +35,6 @@ An hourly autobuild is also available, hosted by [[Joey]]:
 
 * x86-64: [download tarball](https://downloads.kitenet.net/git-annex/autobuild/amd64/git-annex-standalone-amd64.tar.gz) ([build logs](https://downloads.kitenet.net/git-annex/autobuild/amd64/))
 * x86-32: [download tarball](https://downloads.kitenet.net/git-annex/autobuild/i386/git-annex-standalone-i386.tar.gz) ([build logs](https://downloads.kitenet.net/git-annex/autobuild/i386/))
-* x86-32, for ancient kernels: [download tarball](https://downloads.kitenet.net/git-annex/autobuild/i386-ancient/git-annex-standalone-i386-ancient.tar.gz) ([build logs](https://downloads.kitenet.net/git-annex/autobuild/i386-ancient/))
 * arm64: [download tarball](https://downloads.kitenet.net/git-annex/autobuild/arm64/git-annex-standalone-arm64.tar.gz) ([build logs](https://downloads.kitenet.net/git-annex/autobuild/arm64/))
 * arm64, for ancient kernels: [download tarball](https://downloads.kitenet.net/git-annex/autobuild/arm64-ancient/git-annex-standalone-arm64-ancient.tar.gz) ([build logs](https://downloads.kitenet.net/git-annex/autobuild/arm64-ancient/))
 
index ace9ea84ad08b65ecaba974f074dcfb427fbbe91..9215c546d3e29cc1ec9fb6e71c7867f51162dd08 100644 (file)
@@ -192,14 +192,14 @@ source-repository head
 
 custom-setup
   Setup-Depends:
-    base (>= 4.11.1.0 && < 5.0),
+    base (>= 4.15.1.0 && < 5.0),
     split,
     filepath,
     exceptions,
     bytestring,
     filepath-bytestring (>= 1.4.2.1.4),
-    process (>= 1.6.3),
-    time (>= 1.5.0),
+    process (>= 1.6.4),
+    time (>= 1.9.1),
     directory (>= 1.2.7.0),
     async,
     utf8-string,
@@ -208,7 +208,7 @@ custom-setup
 Executable git-annex
   Main-Is: git-annex.hs
   Build-Depends:
-   base (>= 4.11.1.0 && < 5.0),
+   base (>= 4.15.1.0 && < 5.0),
    network-uri (>= 2.6),
    optparse-applicative (>= 0.14.2),
    containers (>= 0.5.8),
@@ -216,11 +216,11 @@ Executable git-annex
    stm (>= 2.3),
    mtl (>= 2),
    uuid (>= 1.2.6),
-   process (>= 1.6.3),
+   process (>= 1.6.4),
    data-default,
    case-insensitive,
    random,
-   dlist,
+   dlist (>= 1.0),
    unix-compat (>= 0.5 && < 0.8),
    SafeSemaphore,
    async,
@@ -246,20 +246,20 @@ Executable git-annex
    http-conduit (>= 2.3.0),
    http-client-restricted (>= 0.0.2),
    conduit,
-   time (>= 1.5.0),
+   time (>= 1.9.1),
    old-locale,
    persistent-sqlite (>= 2.8.1),
    persistent (>= 2.8.1),
-   persistent-template,
+   persistent-template (>= 2.8.0),
    unliftio-core,
    microlens,
-   aeson,
+   aeson (>= 2.0.0),
    vector,
    tagsoup,
    unordered-containers,
-   feed (>= 1.0.0),
+   feed (>= 1.1.0),
    regex-tdfa,
-   socks,
+   socks (>= 0.6.0),
    byteable,
    stm-chans,
    securemem,
@@ -271,17 +271,17 @@ Executable git-annex
    concurrent-output (>= 1.10),
    unbounded-delays,
    QuickCheck (>= 2.10.0),
-   tasty (>= 1.2),
+   tasty (>= 1.3.0),
    tasty-hunit,
    tasty-quickcheck,
    tasty-rerun,
    ansi-terminal >= 0.9,
-   aws (>= 0.20),
+   aws (>= 0.22.1),
    DAV (>= 1.0),
    network (>= 3.0.0.0),
    network-bsd,
    git-lfs (>= 1.2.0),
-   clock (>= 0.2.0.0)
+   clock (>= 0.3.0)
   CC-Options: -Wall
   GHC-Options: -Wall -fno-warn-tabs  -Wincomplete-uni-patterns
   Default-Language: Haskell2010
index 4ca2a3c68370c09b7f867b55e57d7f321b5084ee..d46045734f1e11f7059b82e0dd3fe68f6f29f1f6 100644 (file)
@@ -13,7 +13,6 @@ flags:
     servant: true
 packages:
 - '.'
-resolver: nightly-2024-07-29
+resolver: lts-23.2
 extra-deps:
 - filepath-bytestring-1.4.100.3.2
-- aws-0.24.3
diff --git a/standalone/linux/stack-i386ancient.yaml b/standalone/linux/stack-i386ancient.yaml
deleted file mode 100644 (file)
index bfc8bfe..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-flags:
-  git-annex:
-    production: true
-    parallelbuild: true
-    assistant: true
-    pairing: true
-    torrentparser: true
-    magicmime: false
-    dbus: false
-    debuglocks: false
-    benchmark: false
-    crypton: false
-    servant: false
-packages:
-- '.'
-extra-deps:
-- IfElse-0.85
-- aws-0.22
-- bloomfilter-2.0.1.0
-- tasty-1.2
-- tasty-rerun-1.1.14
-- torrent-10000.1.1
-- sandi-0.5
-- filepath-bytestring-1.4.2.1.6
-- ansi-terminal-0.9.1
-- ansi-wl-pprint-0.6.9
-- concurrent-output-1.10.15
-- git-lfs-1.2.0
-- http-client-restricted-0.0.5
-- http-client-0.7.11
-- http-client-tls-0.3.6.1
-- http-conduit-2.3.8
-- network-3.0.1.0
-- network-bsd-2.8.1.0
-- dbus-1.2.4
-- simple-sendfile-0.2.30
-- network-multicast-0.3.2
-- socks-0.6.1
-- wai-extra-3.0.25
-- warp-3.2.26
-- connection-0.3.0
-- DAV-1.3.4
-explicit-setup-deps:
-  git-annex: true
-resolver: lts-12.14